package com.wms.entity;

import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import com.alibaba.excel.annotation.write.style.HeadRowHeight;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.wms.enums.ReturnStatus;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.Date;
import java.io.Serializable;

/**
 * @author TianWenHe
 * @date 2025/4/27
 * @desc 采购入库表
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
@HeadRowHeight(20)
@ColumnWidth(20)
public class StorePurchase implements Serializable {
    /**
     * 主键ID
     */
    @ExcelProperty("主键ID")
    private Long id;

    /**
     * 采购图片
     */
    @ExcelIgnore
    private String image;

    /**
     * 入库单号
     */
    @ExcelProperty("入库单号")
    private String purchaseNo;

    /**
     * 采购订单号
     */
    @ExcelProperty("采购订单号")
    private String orderNo;

    /**
     * 物流公司
     */
    @ExcelProperty("物流公司")
    private String logisticsCompany;

    /**
     * 物流单号
     */
    @ExcelProperty("物流单号")
    private String trackingNo;

    /**
     * 收货仓库
     */
    @ExcelProperty("收货仓库")
    private String warehouse;

    /**
     * 入库数量
     */
    @ExcelProperty("入库数量")
    private Integer quantity;

    /**
     * 状态
     */
    @ExcelProperty("状态")
    private String status;

    /**
     * 创建时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ExcelProperty("创建时间")
    private Date createTime;

    /**
     * 入库时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ExcelProperty("入库时间")
    private Date storageTime;

    /**
     * 收货时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ExcelProperty("收货时间")
    private Date receivingTime;

    /**
     * 仓库ID
     */
    @ExcelProperty("仓库ID")
    private Long warehouseId;

    /**
     * 删除标志（0代表存在 2代表删除）
     */
    @ExcelIgnore
    private String delFlag;
}
